package com.ziyun.erp.modules.supp.service;

import com.baomidou.mybatisplus.service.IService;
import com.ziyun.erp.modules.supp.entity.MerchantsImageVo;
import com.ziyun.erp.modules.supp.entity.SellerInfoEntity;
import io.renren.common.utils.R;

import java.util.List;
import java.util.Map;

/**
 * 商户入驻接口
 * @author gaosheng
 * @email
 * @date 2018-07-27 11:26:47
 */
public interface SellerInfoService extends IService<SellerInfoEntity> {

    /**
     * 查询列表信息
     * @param params
     * @return
     */
    List<SellerInfoEntity> queryParam(Map<String, Object> params);

    /**
     * 分页列表查询
     * @param params
     * @return
     */
    R queryPageSellerInfoList(Map<String, Object> params);

    /**
     *  详情
     * @param sellerId
     * @return
     */
    SellerInfoEntity selectById(Integer sellerId);

    /**
     * 总店设置
     * @param sellerId
     * @param mainStoreId
     * @return
     */
    Map setMainStore(Integer sellerId, Integer mainStoreId);

    /**
     * 商户审核
     * @param sellerInfo
     * @param ipAddress
     * @return
     */
    R audit(SellerInfoEntity sellerInfo, Long userId, String ipAddress);

    /**
     * 商户图片保存
     * @param merchantsImageVo
     */
    R saveImage(MerchantsImageVo merchantsImageVo);

    /**
     * 查询连锁店信息
     * @param sellerId 商户ID
     * @param mainSellerId 主店ID
     * @return
     */
    List<SellerInfoEntity> queryMainStore(Integer sellerId, Integer mainSellerId);

    /**
     * 备注信息保存
     * @param sellerId 商户ID
     * @param remarks 备注信息
     * @return
     */
    Map saveRemark(Integer sellerId, String remarks);

    /**
     * 隐藏/显示商家信息
     * @param sellerId
     * @param display
     * @return
     */
    Map updateView(Integer sellerId, String display);

    /**
     * 录入业务员
     * @param sellerInfo
     * @return
     */
    Map addSalesman(SellerInfoEntity sellerInfo);

    /**
     * 商户信息检测
     * @param sellerId
     * @return
     */
    R sellerInfoValidity(Integer sellerId);

    /**
     * 编辑
     * @param sellerInfo
     * @return
     */
    R updateInfo(SellerInfoEntity sellerInfo);

    /**
     * 查询工厂信息
     * @return
     */
    List<SellerInfoEntity> queryFactoryList();

    /**
     * @author   Alix_zw
     * @Date     
     * @Description   查询门店
     
     * @Return
    **/
    List<SellerInfoEntity> getSelectList();

    /**
     * 删除商户图册
     * @param id
     * @return
     */
    R removeSellerImage(Integer sellerId, Integer id);

    /**
     * 查询商户买家ID
     * @param sellerId
     * @return
     */
    Integer selectPopSellerInfo(Integer sellerId);

    R freeze(Integer sellerId);

    R unfreeze(Integer sellerId);

    R updatePickUp(Integer sellerId, Integer pickUp);

    R sellerCopyGoods(Integer sellerId);

    List<SellerInfoEntity> selectThirdOrderSyn();

    R sellerCopyGoodsBatch(Integer[] sellerIds);

    List<Map<String,Object>> getShops(String area);

    R sellerCopyGoodsBatchAll(Integer nums);
}

